// var n = 100;
// function fn() {
//   n = 200;
// }
// fn();
// console.log(`n`, n);

/**
 * 第二道面试题
 */
// VE : {
//   foo: 0x001,  || AO:{ n: undefined, }
//   n: undefined, 100
// }
// function foo() {
//   console.log(`n`, n);
//   var n = 200;
//   console.log(`n`, n);
// }
// var n = 100;
// foo();

/**
 * 第三道面试题
 */
// VE:{
//   n: undefined, | 100,
//   foo1:  0x001, |  { parent:  VE}
//   foo2: 0x002, | { n: undefined, | 200}
// }
// var n = 100;

// function foo1() {
//   console.log(n);
// }
// function foo2() {
//   var n = 200;
//   console.log(n);
//   foo1();
// }
// foo2();
// console.log(n);

/**
 * 第四道面试题
 */
// 虽然return了， 但是AO 编译的时候还是会var a = undefined;
// var a = 100;
// function fn() {
//   console.log(a);
//   return;
//   var a = 200;
// }
// fn();

/**
 * 第五道面试题
 */
function foo() {
  var a = (b = 10);
}
foo();
// console.log(a);
console.log(b);
